package com.hmall.newskills;

import cn.jiguang.common.utils.Nullable;

import java.util.Calendar;

/**
 * @ClassName BuilderTest
 * @Description
 * @Author zhoutao
 * @Date 2018/12/26 9:54
 * @Version 2.0
 **/
public class BuilderTest {

    public static void main(String []args) {

        System.out.println(Calendar.getInstance().getMaximum(Calendar.YEAR) + "\n");

//        Person person = new Person.Builder().age(22).hight("180").name("zhangsan").sex("男").build();
//        System.out.println(person.toString());
//
//        Multimap multimap = HashMultimap.create();
//        multimap.put(2, 3);
//        multimap.put(2, 4);
//        System.out.println(multimap.get(2).getClass());
//        System.out.println(multimap.asMap().get(2));
//        System.out.println(multimap.asMap().entrySet());
//        System.out.println(multimap.size());
//        List<String> list = new ArrayList<>();
//        list.add("1");
//        System.out.println(Objects.toStringHelper(list));
//        System.out.println(list);
//        List list1 = Lists.newArrayList();
//        list1.add("1");
//        list1.add("12");
//        list1.add("123");
//        Iterable iterable1 = new Iterable() {
//            @Override
//            public Iterator iterator() {
//                return list1.iterator();
//            }
//        };
//        ImmutableMap<Integer, String> stringsByIndex = Maps.uniqueIndex(iterable1,
//                new Function<String, Integer>(){
//            @Override
//            public Integer apply(String string){
//                return string.length();
//            }
//        });
//        System.out.println(stringsByIndex.entrySet());
//
//        ImmutableSet digits = ImmutableSet.of("zero", "one", "two", "three",
//                "four", "five", "six", "seven", "eight", "nine");
//        Function<String, Integer> lengthFunction = new Function<String, Integer>(){
//            @Override
//            public Integer apply(String string){
//                return string.length();
//            }
//        };
//
//        ImmutableListMultimap<Integer, String> digitsByLength = Multimaps.index(digits, lengthFunction);
//        System.out.println(digitsByLength);
//        ArrayListMultimap<String, Integer> multimap1 = ArrayListMultimap.create();
//        multimap1.putAll("b", Ints.asList(2, 4, 6));
//        multimap1.putAll("a", Ints.asList(4, 2, 1));
//        multimap1.putAll("c", Ints.asList(2, 5, 3));
//
//        Map<String, Integer> map = ImmutableMap.of("a", 1, "b", 1, "c", 2);
//        SetMultimap<String, Integer> multimap2 = Multimaps.forMap(map);
//        System.out.println(multimap2);
//        List<String> result = Lists.newArrayList();
//        List<String> source = Lists.newCopyOnWriteArrayList(result);
//        PeekingIterator<String> iter = Iterators.peekingIterator(source.iterator());
//        while(iter.hasNext()){
//            String current = iter.next();
//            while(iter.hasNext() && iter.peek().equals(current)){
//                iter.next();
//            }
//            result.add(current);
//        }
//
////        System.out.println(BigDeci);
//    }
//
//
//
////    Ordering<Foo> ordering = Ordering.natural().min(this, f).nullsFirst().onResultOf(new Function<Foo, Comparable>() {
////        @Override
////        public Comparable apply(Foo foo) {
////            return foo.sortedBy;
////        }
////    });
//
//
//
    }


}

class Foo{
    @Nullable
    String sortedBy;
    int notSortedBy;
}
